// * --- 题目描述 ---
//  * 
//  * 实现一个函数，可以对 url 中的 query 部分做拆解，返回一个 key: value 形式的 object  
//  * 
//  * --- 实例 ---
//  * 
//  * 输入：'http://sample.com/?a=1&e&b=2&c=xx&d#hash' 
//  * 输出：{a: 1, b: 2, c: 'xx', d: ''} 

interface Params{
    [propName:string]:string
}

let preson=(url:string)=>{
    let params:Params={}
    const initUrl:string=url.split("?")[1].split("#")[0]
    //console.log(initUrl);   //a=1&e&b=2&c=xx&d
    const arr=initUrl.split("&")
    //console.log(arr);
    arr.forEach(item=>{
        const paramsItem=item.split("=")
        // console.log(paramsItem[1]);
        // 判断是否有值
        if(paramsItem[1]){
            params[paramsItem[0]]=paramsItem[1]
        }
    })
    return params
}

console.log(preson('http://sample.com/?a=1&e&b=2&c=xx&d#hash'));

